package com.sz.admin.dtuftpinfo.pojo.vo;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import java.util.Date;
import cn.idev.excel.annotation.ExcelIgnore;
import cn.idev.excel.annotation.ExcelProperty;
import com.sz.excel.annotation.DictFormat;
import org.springframework.format.annotation.DateTimeFormat;

/**
 * <p>
 * DtuFtpInfo返回VO
 * </p>
 *
 * @author sz-admin
 * @since 2025-10-20
 */
@Data
@Schema(description = "DtuFtpInfo返回VO")
public class DtuFtpInfoVO {

    @ExcelIgnore
    @Schema(description = "主键ID")
    private Long id;

    @ExcelProperty(value = "设备编号")
    @Schema(description = "设备编号")
    private String deviceId;

    @ExcelProperty(value = "远程客户端IP")
    @Schema(description = "远程客户端IP")
    private String remoteIp;

    @ExcelProperty(value = "远程客户端端口")
    @Schema(description = "远程客户端端口")
    private Integer remotePort;

    @ExcelProperty(value = "通道标识ID")
    @Schema(description = "通道标识ID")
    private String channelId;

    @ExcelProperty(value = "服务器通道ID")
    @Schema(description = "服务器通道ID")
    private String serverChannelId;

    @ExcelProperty(value = "连接时间")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Schema(description = "连接时间")
    private Date connectTime;

    @ExcelProperty(value = "断开时间")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Schema(description = "断开时间")
    private Date disconnectTime;

    @ExcelProperty(value = "状态")
    @DictFormat(dictType = "dtu_ftp_status")
    @Schema(description = "状态：1-在线，0-离线")
    private Integer status;

    @ExcelProperty(value = "创建时间")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Schema(description = "创建时间")
    private Date createTime;

    @ExcelProperty(value = "更新时间")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Schema(description = "更新时间")
    private Date updateTime;

    @ExcelProperty(value = "ICCID")
    @Schema(description = "ICCID")
    private String iccid;

    @ExcelProperty(value = "LEDID")
    @Schema(description = "LEDID")
    private String ledid;

    @ExcelProperty(value = "绑定密码")
    @Schema(description = "绑定密码")
    private String bindToken;

    @ExcelProperty(value = "绑定时间")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Schema(description = "绑定时间")
    private Date bindTime;

    @ExcelProperty(value = "过期时间")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Schema(description = "过期时间")
    private Date expireTime;

    @ExcelProperty(value = "车辆编号")
    @Schema(description = "车辆编号")
    private String vehicleNumber;

    @ExcelProperty(value = "是否锁定")
    @Schema(description = "是否锁定")
    private String isLock;

    @ExcelProperty(value = "删除标识")
    @Schema(description = "删除标识")
    private String delFlag;

    @ExcelProperty(value = "部门ID")
    @Schema(description = "部门ID")
    private Long deptId;

    @ExcelProperty(value = "备注")
    @Schema(description = "备注")
    private String remark;

    @ExcelProperty(value = "容量（单位：m³）")
    @Schema(description = "容量（单位：m³）")
    private String capacity;

    @ExcelProperty(value = "起始最低速度：(start_min_speed km/h)")
    @Schema(description = "起始最低速度：(start_min_speed km/h)")
    private Float tSpeed;

    @ExcelProperty(value = "起始振动时间区域（s）")
    @Schema(description = "起始振动时间区域（s）")
    private Integer tTimeZone;

    @ExcelProperty(value = "震动次数")
    @Schema(description = "震动次数")
    private Integer tTimes;

    @ExcelProperty(value = "终点雷达距离（mm）")
    @Schema(description = "终点雷达距离（mm）")
    private java.math.BigDecimal tRadarDistance;

    @ExcelProperty(value = "终点雷达时间区域（s）")
    @Schema(description = "终点雷达时间区域（s）")
    private Integer tRadarTime;

    @ExcelProperty(value = "起点终点有效里程（m）")
    @Schema(description = "起点终点有效里程（m）")
    private Integer tSeMinDistance;

    @ExcelProperty(value = "起点终点有效运输时长（s）")
    @Schema(description = "起点终点有效运输时长（s）")
    private Integer tSeMinTime;

    @ExcelProperty(value = "起点终点有效运输里程（m）")
    @Schema(description = "起点终点有效运输里程（m）")
    private Integer tSeTransportDistance;

    @ExcelProperty(value = "起点间最小距离（m）")
    @Schema(description = "起点间最小距离（m）")
    private Integer tEsMinDistance;

    @ExcelProperty(value = "SIM卡号")
    @Schema(description = "SIM卡号")
    private String simNumber;

}